package com.hdsx.restful.glzt.structure.ql.mapper;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.hdsx.restful.dao.Mapper;
import com.hdsx.restful.glzt.roadline.lxxx.bean.Znode;
import com.hdsx.restful.glzt.structure.ql.bean.DoubleValueName;
import com.hdsx.restful.glzt.structure.ql.bean.IntValueName;
import com.hdsx.restful.glzt.structure.ql.bean.Ql;

@Mapper
public interface QlMapper {

	List<Ql> selectList(Map<String, Object> parameter);
	
	int selectCount(Map<String, Object> parameter);
	
	/**
	 * 路线上的桥梁
	 * @return
	 */
	List<Znode> qlNode(); 
	/**
	 * 分类细节
	 */
	List<Ql> detail(Map<String, Object> map);
	
	int countDetail(Map<String, Object> map);
	
	int countTotal(Map<String, Object> map);
	
	List<Ql> listAll(@Param("lxbm")String lxbm,@Param("xzqhbm")String xzqhbm,@Param("sxxfx")String sxxfx,@Param("qdzh")Double qdzh,
			@Param("zdzh")Double zdzh,@Param("name")String name);
	
	Ql selectById(String id);

	List<Ql> selectListByLxbm(Map<String, Object> parameter);
	int countByLxbm(Map<String, Object> parameter);
	Ql queryOne(String qldm);
	int countByXzqhbm(Map<String, Object> parameter);
	List<Ql> selectListByXzqhbm(Map<String, Object> parameter);
	List<Ql> countQlkjfldmByXzqhbm(String xzqhbm);
	List<Ql> countQlkjfldmByLxbm(String lxbm);
	Ql getShapeById(String id);
	
	List<IntValueName> countTotalByParameter(Map<String, Object> parameter);
	
	List<DoubleValueName> countLengthByParameter(Map<String, Object> parameter);
	
	List<String> selectClassify(Map<String, Object> parameter);
	
	List<String> selectName(String name);
}
